iT邦幫忙

DAY 10
0

安迪豬的Android學習筆記系列 第 10

我的Android筆記(12)

  • 分享至 

  • xImage
  •  

開發Android時的那些筆記...!!
Android螢幕轉向通常會重新oncreate一次
這在沒資料的時候還好,有資料的時候就要每次轉向都得重新設定一次
有時候還是挺惱人的。其實只要在<activity>裡加上一個參數,
下次旋轉就不會整個都destory掉,資料當然也就不用重新設定拉。
*****************************
只要加上下面的屬性在AndroidManifest.xml <activity>裡:

android:configChanges="keyboard|keyboardHidden|orientation" 

例如:

<activity
            android:label="@string/app_name"
            android:name=".MainActivity" 
            android:configChanges="keyboard|keyboardHidden|orientation" >
            <intent-filter >
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
</activity>

就完成拉。

排除onStart, onResume, onPause, onStop,
咱門來看看Activity在沒有設定上面屬性時,旋轉的過程:

onCreate //第一次創建Activity
onSaveInstanceState //旋轉螢幕時在這裡儲存狀態
onDestroy //然後銷毀Activity
onCreate //旋轉後重新創建一次Activity
onRestoreInstanceState //將存下來的狀態回復

有設定上面屬性時,旋轉的過程:
onCreate //第一次創建Activity
onConfigurationChanged //旋轉螢幕時觸發
onConfigurationChanged //再一次旋轉螢幕時觸發

當app的port跟land的UI都大不相同時,建議使用第一種設定。
當app的port跟land的UI大同小異(或沒有動態做UI排版),且畫面存有資料時,建議使用第二種設定。


上一篇
我的Android筆記(11)
下一篇
我的Android筆記(13)
系列文
安迪豬的Android學習筆記12
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言